package com.demo.inboundhandlerandoutboundhandler.codec;

import io.netty.buffer.ByteBuf;
import io.netty.channel.ChannelHandlerContext;
import io.netty.handler.codec.MessageToByteEncoder;

/**
 * 可以被客户端使用，也可被服务端使用
 * @author gy
 * @date 2022/7/31
 */
public class MyLongToByteEncoder extends MessageToByteEncoder<Long> {

    // 编码方法
    @Override
    protected void encode(ChannelHandlerContext ctx, Long msg, ByteBuf out) throws Exception {
        System.out.println("MyLongToByteEncoder 编码器的 encode 被调用");
        System.out.println("发送的msg=" + msg);
        out.writeLong(msg);
        System.out.println("========== 数据已编码完毕，发送至对应的socket ===========");
    }
}
